package k8s

import (
	"github.com/go-logr/logr"
	"k8s.io/client-go/kubernetes"
)

// Services  is the K8s service entrypoint.
type Services interface {
	ConfigMap
	StatefulSet
	Service
	//Job
}

type services struct {
	ConfigMap
	StatefulSet
	Service
}

func NewK8sService(kubeClient kubernetes.Interface, logger logr.Logger) Services {
	//c, _ := rest.InClusterConfig()
	//client, _ := kubernetes.NewForConfig(c)
	//client.AppsV1().StatefulSets("").Update()
	return &services{
		ConfigMap:   newConfigMapService(kubeClient, logger),
		StatefulSet: newStatefulSetService(kubeClient, logger),
		Service:     newServiceService(kubeClient, logger),
	}
}
